automatic upgrades: use default version channel everywhere#35342
automatic upgrades: use default version channel everywhere#35342
Conversation
cc8d429 to
eb76306
Compare
c608252 to
f367546
Compare
|
If we'd like to avoid too much cloud specific login in the teleport code base, we can configure the cloud specific channels in the teleportcontroller ex: https://github.com/gravitational/cloud/pull/6904 |
I added the defaults because cloud-specific code was already relying on this or using hardcoded URLs. This default is required to not break existing integrations. |
f589c48 to
bca6cb9
Compare
There was a problem hiding this comment.
This code is for v15
So, I guess we want to remove this and add it back for the backport PRs
r0mant
left a comment
There was a problem hiding this comment.
Code lgtm but let's please test all affected Discover flows to make sure nothing regresses.
Also, does this cover auto-discovery install scripts (e.g. for EC2) as well?
This commit: - initializes default upgrade channels based on the server features - makes all integrations use the upgrade channels instead of hitting hardcoded s3 bucket - makes the version channel return its own version if the target version is too high - makes the NoVersion handler properly: returned as an error. This way soneone relying on the version getter doesn't have to check - moves the version kube-agent-updater lib in main teleport libs - add tests for noVersion channels
Co-authored-by: Bernard Kim <bernard@goteleport.com>
bc1c8b9 to
708b1b9
Compare
* Use default upgrade channel This commit: - initializes default upgrade channels based on the server features - makes all integrations use the upgrade channels instead of hitting hardcoded s3 bucket - makes the version channel return its own version if the target version is too high - makes the NoVersion handler properly: returned as an error. This way soneone relying on the version getter doesn't have to check - moves the version kube-agent-updater lib in main teleport libs - add tests for noVersion channels * Update lib/web/join_tokens.go Co-authored-by: Bernard Kim <bernard@goteleport.com> * address marco's feedback * address marco's feedback pt.2 --------- Co-authored-by: Bernard Kim <bernard@goteleport.com>
* Use default upgrade channel This commit: - initializes default upgrade channels based on the server features - makes all integrations use the upgrade channels instead of hitting hardcoded s3 bucket - makes the version channel return its own version if the target version is too high - makes the NoVersion handler properly: returned as an error. This way soneone relying on the version getter doesn't have to check - moves the version kube-agent-updater lib in main teleport libs - add tests for noVersion channels * Update lib/web/join_tokens.go Co-authored-by: Bernard Kim <bernard@goteleport.com> * address marco's feedback * address marco's feedback pt.2 --------- Co-authored-by: Bernard Kim <bernard@goteleport.com>
* Add a version server in the proxy + use it in agent chart (#35150) This PR adds an embedded [version server](https://goteleport.com/docs/architecture/agent-update-management/#version-server-and-source-of-truth) in the proxy to address: gravitational/cloud#6773 The version server can be configured through `teleport.yaml`: ```yaml proxy_service: enabled: "yes" automatic_upgrades_channels: stable/cloud: forward_url: https://updates.releases.teleport.dev/v1/stable/cloud preview/cloud: static_version: v12.5.4 ``` The forwarded call results are cached for a minute. * automatic upgrades: use default version channel everywhere (#35342) * Use default upgrade channel This commit: - initializes default upgrade channels based on the server features - makes all integrations use the upgrade channels instead of hitting hardcoded s3 bucket - makes the version channel return its own version if the target version is too high - makes the NoVersion handler properly: returned as an error. This way soneone relying on the version getter doesn't have to check - moves the version kube-agent-updater lib in main teleport libs - add tests for noVersion channels * Update lib/web/join_tokens.go Co-authored-by: Bernard Kim <bernard@goteleport.com> * address marco's feedback * address marco's feedback pt.2 --------- Co-authored-by: Bernard Kim <bernard@goteleport.com> * Fix teleport.e integrations builds (#35996) * Move automaticupgrades packages in `lib/automaticupgrades` * Fix `kube-agent-udpater` Dockerfile * Write handler config (#35998) * go mod tidy * Bump controller-runtime v0.16.3 * Use channel --------- Co-authored-by: Hugo Shaka <hugo.hervieux@goteleport.com>
This PR:
Part of https://github.com/gravitational/cloud/issues/6773